package com.xzmzhp.service.activity;

import com.xzmzhp.pojo.activity.Program;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * @author: 王源(xm)
 * @create: 2022-03-27 20:02
 * @program: ams
 * @description: 活动节目管理逻辑交互类
 */

@Repository
public interface ProgramService {
    /**
     * 查询所有节目数据
     * @return 节目库数据
     */
    List<Program> findAll();

    /**
     * 根据参数查询数据
     * @param param 参数
     *        id 活动节目id
     *        programName 节目名称
     *        personnelName 人员名称
     *        societyName 社团名称
     * @return 节目信息
     */
    List<Program> findProgramByParam(Map<String,Object> param);

    /**
     * 根据id查询活动节目信息
     * @param id id
     * @return 活动节目信息
     */
    Program findProgramById(Integer id);

    /**
     * 根据节目id查询活动节目信息
     * @param programId 节目id
     * @return 活动节目信息
     */
    List<Program> findProgramByProgramId(Integer programId);

    /**
     * 添加活动节目信息
     * @param program 活动节目信息
     * @return 是否成功
     */
    Integer addProgram(Program program);

    /**
     * 修改活动节目信息
     * @param program 活动节目信息
     * @return 是否成功
     */
    Integer exitProgram(Program program);

    /**
     * 根据节目id删除活动节目信息
     * @param id 活动节目id
     * @return 是否成功
     */
    Integer delProgram(Integer id);
}
